Page({
  onLoad() {
    // getCurrentPages()[0] 获取到my页面的页面对象信息
    // console.log(getCurrentPages()[0].data) // {avatar:xxx, nickName: 'xxx'}
    this.setData({ ...getCurrentPages()[0].data })
  },
  async getNickName(ev) {
    // console.log(ev.detail.value) // 模拟器上需要blur两次
    if (!ev.detail.value) return
    await wx.http.put('/userInfo', { nickName: ev.detail.value })
    // 方案一
    // getCurrentPages()[0].getUserInfo() //让上一个页面重新获取一次个人信息
    // this.setData({ ...getCurrentPages()[0].data })  // 重新将最新的个人信息设置一次
    // 方案二
    // 改自己 同步视图
    // this.setData({ nickName: ev.detail.value })
    // 改上一个页面同步视图
    getCurrentPages()[0].setData({ nickName: ev.detail.value })
  },
  setAvatar(ev) {
    console.log(ev.detail.avatarUrl) // 选择的图像地址  临时地址
    // 1.同步视图
    this.setData({ avatar: ev.detail.avatarUrl })
    // 2. 发送请求
    wx.uploadFile({
      url: wx.http.baseURL + '/upload',
      filePath: ev.detail.avatarUrl,
      name: 'file',
      header: {
        Authorization: `Bearer ${getApp().token}`,
      },
      formData: {
        type: 'avatar',
      },
      success: (res) => {
        console.log(JSON.parse(res.data)) // 响应的数据是json字符串 处理一下
        // 3. 返回上一页的时候 要看到最新修改后的图片
        getCurrentPages()[0].setData({ avatar: JSON.parse(res.data).data.url })
      },
    })
  },
})
